/*
 *
 *  * 版权声明和许可协议
 *  *
 *  * 版权所有 (c) 2023 纽百特®
 *  * 版权所有，保留所有权利
 *  *
 *  * 本软件使用 MIT 许可协议进行许可，详情请参阅：
 *  *
 *  *   https://opensource.org/licenses/MIT
 *  *
 *  * 更多信息，请访问我们的网站：
 *  *
 *  *   http://www.nbsaas.com
 *  *
 *  * 纽百特® 是西安纽百特科技有限责任公司的注册商标，未经授权不得使用。
 *
 */

package com.nbsaas.boot.generator.rest.handle.field;


import com.nbsaas.boot.code.annotation.bean.StoreStateBean;
import com.nbsaas.boot.generator.beans.FormBean;
import com.nbsaas.boot.generator.rest.handle.base.BaseFieldHandle;
import com.nbsaas.boot.rest.enums.StoreState;

import java.lang.reflect.Field;

/**
 * 排序是否有储存类型字段
 */
public class StoreStateHandle extends BaseFieldHandle {

    @Override
    public void handle(Class<?> object, Field field, FormBean formBean) {
        if (field.getType() == StoreState.class) {
            StoreStateBean bean = object.getAnnotation(StoreStateBean.class);
            if (bean != null) {
                formBean.setStoreState(true);
            }
        }
    }

    @Override
    public int getOrder() {
        return 100;
    }
}
